home *** CD-ROM | disk | FTP | other *** search
- Path: news1.halcyon.com!coho!riston
- From: riston@coho.halcyon.com (Michael D. Riston)
- Newsgroups: comp.lang.c++
- Subject: Q: A Good C++ Graphics Editor Design
- Date: 1 Feb 1996 19:36:25 GMT
- Organization: Northwest Nexus Inc.
- Message-ID: <4er4np$84o@news1.halcyon.com>
- NNTP-Posting-Host: coho.halcyon.com
-
-
- Hello,
-
- I have been charged with designing your classic C++ object oriented graphics
- editor (e.g. draw a circle, square, etc). Before I code this editor I
- want to be sure that the software is designed well. Below are the details:
-
- Tools
- -----
- Windows 95, Win32 development.
- Visual C++ 4.0 using MFC.
-
- Some requirements
- -----------------
-
- - Needs to draw your basic objects: square, line, etc.
-
- - Support on-screen text editing.
-
- - Will be drawing specialized bar code symbols. These bar code
- objects, support text under each bar code. This text needs
- to be selectable and editable within the bar code object.
-
- Questions
- ---------
-
- 1) Are there any good books/articles on designing and implementing
- object oriented graphics editor(s).
-
- 2) I have examined the MS VC++ 4.0 DRAWCLI object oriented draw example.
- Is this a good example? Are there any gotchas hidden in the
- example that shows up when the design is applied to a large
- scale project.
-
- 3) With C++ it is easy to create a ShapeObject class that has virtual
- viewing functions like Draw() and Update() and to contain data
- information like x and y. To create a box one would derive a
- BoxShape from a ShapeObject class and add the extra data items,
- like width and height.
-
- This could be one approach to designing a shape inheritance
- tree, but would it be a good idea to separate the 'Viewing'
- functions into a ShapeView class (e.g BoxView), and the data
- items into a 'ShapeData' class (e.g. BoxData)? This idea is
- basically applying the MFC doc/view design to individual shape
- objects.
-
- Thanks in advance.
-
- You can e-mail to riston@halycon.com or post.
-
- Mike...:)
-
-
-
- --
- --------------------------------------------------------------------------
- Mike and Hilda Riston Email - riston@halycon.com
- 21311 52nd Ave SE Voice - (206) 486-5017
- Woodinville, WA 98072 Web - http://www.halcyon.com/riston/home/home.html
-